define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function($, undefined, Backend, Table, Form) {



    var Controller = {

        index: function() {

            // 初始化表格参数配置

            Table.api.init({

                extend: {

                    index_url: 'pay/index',

                    add_url: 'pay/index/add',

                    edit_url: 'pay/index/edit',

                    del_url: 'pay/index/del',

                    multi_url: 'pay/index/multi',

                    table: 'pay',

                }

            });



            var table = $("#table");



            // 初始化表格

            table.bootstrapTable({

                url: $.fn.bootstrapTable.defaults.extend.index_url,

                pk: 'id',

                sortName: 'id',
                queryParams: function queryParams(params) {

                    var searchForm = $("form[role=form]");
                    //  console.log(searchForm);
                    if (searchForm.length) {

                        var searchFields = searchForm.serializeArray();

                        for (var i = 0; i < searchFields.length; i++) {

                            if (searchFields[i]['value']) {

                                params[searchFields[i]['name']] = searchFields[i]['value'];

                            }
                        }
                    }


                    return params;

                },
                columns: [

                    [

                        { checkbox: true },

                        { field: 'id', title: __('Id') },

                        {

                            field: 'project',

                            title: __('Project'),

                            formatter: function(project) {

                                if (project.name) {

                                    return project.name;

                                }

                                return '';

                            }

                        },

                        { field: 'summary', title: __('Summary') },

                        { field: 'amount', title: __('Amount') },

                        { field: 'remark', title: __('Remark') },

                        { field: 'create_time', title: __('CreateTime'), formatter: Table.api.formatter.datetime },

                        { field: 'status', title: __('Status') },

                        { field: 'operate', title: __('Operate'), table: table, events: Table.api.events.operate, formatter: Table.api.formatter.operate }

                    ]

                ]

            });



            // 为表格绑定事件

            Table.api.bindevent(table);

        },

        add: function() {

            // Controller.api.bindevent();



            Form.api.bindevent($("form[role=form]"),
                function(data, ret) {
                    console.log('test');
                    parent.location.reload();
                },
                function(success, error) {
                    //bindevent的第三个参数为提交前的回调
                    //如果我们需要在表单提交前做一些数据处理，则可以在此方法处理
                    //注意如果我们需要阻止表单，可以在此使用return false;即可
                    //如果我们处理完成需要再次提交表单则可以使用submit提交,如下
                    //Form.api.submit(this, success, error);


                    return false;
                });
        },

        edit: function() {
            // $("#c-paymentid").data("format-item", function(row) {
            //     var splitstr = '';
            //     if (row.parentid > 0)
            //         splitstr = '--'
            //     return splitstr + row.name;
            // });
            Controller.api.bindevent();

        },

        api: {

            bindevent: function() {

                Form.api.bindevent($("form[role=form]"));

            }

        }

    };

    return Controller;

});